home *** CD-ROM | disk | FTP | other *** search
Text File | 1994-04-19 | 5.3 KB | 240 lines | [TEXT/MPS ] |
-
- /*
- * This file was generated by the SOM Compiler.
- * FileName: Locrian:WWDCSun:CPlusPlus:Undo.xh.
- * Generated using:
- * SOM Precompiler somipc: somc/smemit.c
- * SOM Emitter emitxh.dll: somc/smmain.c
- */
-
- /*
- *
- * Constants
- *
- *
- * Classes defined in this interface
- *
- */
-
-
- #ifndef SOM_ODUndo_xh
- #define SOM_ODUndo_xh
-
- class ODUndo;
-
- #define ODUndo_MajorVersion 0
- #define ODUndo_MinorVersion 0
-
- /* C++ som defs */
- #include <somcls.xh>
-
- /* Include C++ parent defs */
- #ifndef SOM_ODObject_xh
- #include <ODObject.xh>
- #endif
-
- #ifndef ODUndo_API
- #define ODUndo_API
- /*
- * -- The Class API
- */
-
- /*
- * Start of user-defined types:
- */
- class ODExtension;
- class ODPart;
-
- /*
- * End of user-defined types.
- */
-
- #if applec ^ PRAGMA_LIB_EXPORT
- #pragma lib_export on
- #endif
-
-
- /* A procedure to create the ODUndo Class */
- SOMEXTERN SOMClass * SOMLINK ODUndoNewClass(
- integer4 majorVersion,
- integer4 minorVersion);
-
- /* The API to the ODUndo class object, and the methods it introduces. */
- typedef struct ODUndoClassDataStructure {
- SOMClass *classObject;
- somMToken InitUndo;
- somMToken AddActionToHistory;
- somMToken Undo;
- somMToken Redo;
- somMToken MarkActionHistory;
- somMToken ClearActionHistory;
- somMToken ClearRedoHistory;
- somMToken PeekUndoHistory;
- somMToken PeekRedoHistory;
- } ODUndoClassDataStructure;
- #ifdef SOM_NO_DATA_EXPORTS
- SOMEXTERN ODUndoClassDataStructure * ODUndoGetClassData ( void );
- # undef ODUndoClassData
- # define ODUndoClassData (*ODUndoGetClassData())
- #else
- SOMEXTERN ODUndoClassDataStructure ODUndoClassData;
- #endif /* SOM_NO_DATA_EXPORTS */
-
- #if applec ^ PRAGMA_LIB_EXPORT
- #pragma lib_export off
- #endif
-
- #define _ODUndo ODUndoClassData.classObject
-
- /* The API to parentMtabs for ODUndo, and the instance data it introduces. */
- SOMEXTERN struct ODUndoCClassDataStructure {
- somMethodTabs parentMtab;
- somDToken instanceDataToken;
- } ODUndoCClassData;
-
- /*
- * -- Typedefs for Procedures that support Methods introduced by ODUndo
- */
- SOMEXTERN {
- typedef void (* SOMLINK somTD_ODUndo_AddActionToHistory)(ODUndo *somSelf, Environment *ev,
- ODPart* whichPart,
- ODActionData actionData,
- ODActionType actionType,
- ODName undoActionLabel,
- ODName redoActionLabel);
- typedef void (* SOMLINK somTD_ODUndo_Undo)(ODUndo *somSelf, Environment *ev);
- typedef void (* SOMLINK somTD_ODUndo_Redo)(ODUndo *somSelf, Environment *ev);
- typedef void (* SOMLINK somTD_ODUndo_MarkActionHistory)(ODUndo *somSelf, Environment *ev);
- typedef void (* SOMLINK somTD_ODUndo_ClearActionHistory)(ODUndo *somSelf, Environment *ev,
- ODRespectMarksChoices respectMarks);
- typedef void (* SOMLINK somTD_ODUndo_ClearRedoHistory)(ODUndo *somSelf, Environment *ev);
- typedef ODBoolean (* SOMLINK somTD_ODUndo_PeekUndoHistory)(ODUndo *somSelf, Environment *ev,
- ODPart* part,
- ODActionData* actionData,
- ODActionType* actionType,
- ODName* actionLabel);
- typedef ODBoolean (* SOMLINK somTD_ODUndo_PeekRedoHistory)(ODUndo *somSelf, Environment *ev,
- ODPart** part,
- ODActionData* actionData,
- ODActionType* actionType,
- ODName* actionLabel);
- }
-
- #endif /* ODUndo_API */
-
-
- /*
- * -- Method Tokens are Thunks
- */
- #undef somresolve_
- #define somresolve_(obj,mToken) ((somMethodProc*)((void)obj, mToken))
-
- /*
- * -- The C++ Wrapper Class for ODUndo
- */
- class ODUndo : public ODObject
- {
- public:
-
- void *operator new(size_t size)
- {
- SOM_IgnoreWarning(size);
- if (!ODUndoClassData.classObject)
- ODUndoNewClass(ODUndo_MajorVersion,ODUndo_MinorVersion);
- return (void *)
- ((somTD_SOMClass_somNew)
- somresolve_((SOMObject *)((void*)(ODUndoClassData.classObject)),
- SOMClassClassData.somNew))
- ((SOMClass *)((void*)(ODUndoClassData.classObject)));
- }
-
- void operator delete(void * obj)
- {
- ((SOMObject *)obj)->somFree();
- }
-
- /* public method: AddActionToHistory */
- void AddActionToHistory(Environment *ev,
- ODPart* whichPart,
- ODActionData actionData,
- ODActionType actionType,
- ODName undoActionLabel,
- ODName redoActionLabel)
- {
- SOM_Resolve(this,ODUndo,AddActionToHistory)
- (this,ev,whichPart,actionData,actionType,undoActionLabel,redoActionLabel);
- }
-
-
- /* public method: Undo */
- void Undo(Environment *ev)
- {
- SOM_Resolve(this,ODUndo,Undo)
- (this,ev);
- }
-
-
- /* public method: Redo */
- void Redo(Environment *ev)
- {
- SOM_Resolve(this,ODUndo,Redo)
- (this,ev);
- }
-
-
- /* public method: MarkActionHistory */
- void MarkActionHistory(Environment *ev)
- {
- SOM_Resolve(this,ODUndo,MarkActionHistory)
- (this,ev);
- }
-
-
- /* public method: ClearActionHistory */
- void ClearActionHistory(Environment *ev,
- ODRespectMarksChoices respectMarks)
- {
- SOM_Resolve(this,ODUndo,ClearActionHistory)
- (this,ev,respectMarks);
- }
-
-
- /* public method: ClearRedoHistory */
- void ClearRedoHistory(Environment *ev)
- {
- SOM_Resolve(this,ODUndo,ClearRedoHistory)
- (this,ev);
- }
-
-
- /* public method: PeekUndoHistory */
- ODBoolean PeekUndoHistory(Environment *ev,
- ODPart* part,
- ODActionData* actionData,
- ODActionType* actionType,
- ODName* actionLabel)
- {
- return SOM_Resolve(this,ODUndo,PeekUndoHistory)
- (this,ev,part,actionData,actionType,actionLabel);
- }
-
-
- /* public method: PeekRedoHistory */
- ODBoolean PeekRedoHistory(Environment *ev,
- ODPart** part,
- ODActionData* actionData,
- ODActionType* actionType,
- ODName* actionLabel)
- {
- return SOM_Resolve(this,ODUndo,PeekRedoHistory)
- (this,ev,part,actionData,actionType,actionLabel);
- }
-
-
-
- }; /* ODUndo */
-
-
-
- #endif /* SOM_ODUndo_xh */
-